package com.lemobar.pay.enums;

/**
 * 支付宝 支付能力 method枚举
 * 参考：https://opendocs.alipay.com/open/01zuoj
 */
public enum AliPayMethodEnum {

    /*
     当面付(付款码支付)         统一收单交易创建接口          alipay.trade.create
     当面付(扫码支付)          统一收单交易创建接口          alipay.trade.create
     APP支付                  app支付接口2.0              alipay.trade.app.pay(app支付接口2.0)
     手机网站支付             手机网站支付接口2.0             alipay.trade.wap.pay(手机网站支付接口2.0)
     电脑网站支付             统一收单下单并支付页面接口       alipay.trade.page.pay(统一收单下单并支付页面接口)
    */

    ALIPAY_TRADE_CREATE("alipay.trade.create", "当面付(扫码支付)"),

    ALIPAY_TRADE_PAY("alipay.trade.pay", "当面付(付款码支付)"),

    ALIPAY_TRADE_APP_PAY("alipay.trade.app.pay", "APP支付"),

    ALIPAY_TRADE_WAP_PAY("alipay.trade.wap.pay", "Wap手机网站"),

    ALIPAY_TRADE_PAGE_PAY("alipay.trade.page.pay", "Page电脑网站"),



    ALIPAY_TRADE_QUERY("alipay.trade.query", "统一收单线下交易查询(付款码支付查询)"),

    ALIPAY_TRADE_CLOSE("alipay.trade.close", "统一收单交易关闭接口"),

    ALIPAY_TRADE_REFUND("alipay.trade.refund", "统一收单交易退款接口"),

    ALIPAY_TRADE_FASTPAY_REFUND_QUERY("alipay.trade.fastpay.refund.query", "统一收单交易退款查询"),

    ALIPAY_TRADE_CANCEL("alipay.trade.cancel", "统一收单交易撤销接口"),

    ;

    /**
     * 接口名称
     * method code
     */
    private final String code;

    /**
     * 描述
     */
    private final String desc;

    AliPayMethodEnum(String code, String desc) {
        this.code = code;
        this.desc = desc;
    }

    public String getCode() {
        return code;
    }

    public String getDesc() {
        return desc;
    }
}
